#ifndef PCA_H
#define PCA_H

#include "data.h"
#include "../covariance/matrix.h"
#include <iostream>
#include <vector>

class PCA{
	public:
		PCA();
		PCA(std::vector<Data *>);
		~PCA();

		Data *getData(int, int, int);

    protected:
        std::vector<Data *> datasX;
        std::vector<Data *> datasY;

        Matrix setY;
        Matrix meanColumn;
        Matrix a;

        int n, m_, n_, population;
        bool multipleImages;
};

#endif

